gusucode.com > GUI界面实现语音增强matlab源码程序 > speech enhancement/last.m
wave_serial=wavread('4ks71.wav'); figure(1); plot(wave_serial); b=fir1(10,1/8); s=filter(b,1,wave_serial); E=zeros(1,2000); N=2000; for i=1:N E(i)=abs(s(i)); end figure(2); plot(E); M1=0.03; for i=0:N if E(N-i)>M1 X=N-i; break end end X1=X-600; X2=X-200; s1=s(X1:X2); N1=200; r=zeros(1,200); for i=1:N1 for j=1:N1 r(i)=r(i)+abs(s1(j)-s1(i+j)); end end figure(3); plot(r); M2=r(1); for i=1:N1 if r(i)>M2 M2=r(i); end end M2=M2/2-1; Y=zeros(1,20); B=zeros(1,20); j=0; for i=2:(N1-1) if r(i-1)>r(i) & r(i)<r(i+1) & r(i) <M2 j=j+1; Y(j)=i; B(j)=r(i); end end F=0; j=j-1; N_keynote=0; for i=1:j N_keynote=N_keynote+(Y(i+1)-Y(i)); end F=j*4000/N_keynote; res='0'; if F<=195 res='M'; else res='F'; end F M2 res Y B